package com.wicket.okrbff.biz.service;

import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrframework.integration.FwBaseStationClient;
import com.wicket.okrframework.integration.dto.QueryStationListRespDto;
import com.wicket.okrframework.integration.dto.QueryStationListReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffStationDto;
import cn.hutool.core.bean.BeanUtil;
import java.util.stream.Collectors;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrframework.integration.dto.QueryStationDetailRespDto;
import com.wicket.okrframework.integration.dto.QueryStationDetailReqDto;
import com.wicket.okrframework.integration.FwBaseInductionRecordClient;
import com.wicket.okrframework.integration.dto.QueryInductionRecordInfoDetailComRespDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordInfoDetailComReqDto;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrframework.integration.dto.UpdateStationRespDto;
import com.wicket.okrframework.integration.dto.UpdateStationReqDto;
import com.wicket.okrframework.integration.dto.QueryPostListBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryPostListBorderReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffPostDto;
import com.wicket.okrframework.integration.dto.QueryPostListRespDto;
import com.wicket.okrframework.integration.dto.QueryPostListReqDto;
import com.wicket.okrframework.integration.FwBaseNullClient;
import com.wicket.okrframework.integration.dto.QueryPostDetailRespDto;
import com.wicket.okrframework.integration.dto.QueryPostDetailReqDto;
import com.wicket.okrframework.integration.dto.AddPostRespDto;
import com.wicket.okrframework.integration.dto.AddPostReqDto;
import com.wicket.okrframework.integration.dto.UpdatePostRespDto;
import com.wicket.okrframework.integration.dto.UpdatePostReqDto;
import com.wicket.okrframework.integration.dto.QueryStationListBorderRespDto;
import com.wicket.okrframework.integration.dto.QueryStationListBorderReqDto;
import com.wicket.okrframework.integration.FwBasePositionClient;
import com.wicket.okrframework.integration.dto.QueryPositionListRespDto;
import com.wicket.okrframework.integration.dto.QueryPositionListReqDto;
import com.wicket.okrframework.integration.dto.AddStationRespDto;
import com.wicket.okrframework.integration.dto.AddStationReqDto;
import com.wicket.okrframework.integration.dto.QueryNoRepStationListRespDto;
import com.wicket.okrframework.integration.dto.QueryNoRepStationListReqDto;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
public interface StationService {
    /**
   * B1-3查询岗位列表（管理）
   */
    BffQueryStationListRespDto queryStationList(BffQueryStationListReqDto reqDto);

    /**
   * B1-3查询编制去重岗位列表（边界）
   */
    BffQueryNoRepStationListRespDto queryNoRepStationList(BffQueryNoRepStationListReqDto reqDto);

    /**
   * B1-3查询可存档职位条件判断（管理）
   */
    BffQueryArchivePostRespDto queryArchivePost(BffQueryArchivePostReqDto reqDto);

    /**
   * B-13新增岗位（管理）
   */
    BffAddStationRespDto addStation(BffAddStationReqDto reqDto);

    /**
   * B1-3查询可存档岗位条件判断（管理）
   */
    BffQueryArchiveStationRespDto queryArchiveStation(BffQueryArchiveStationReqDto reqDto);

    /**
   * B1-3查询岗位列表（边界）
   */
    BffQueryStationListBorderRespDto queryStationListBorder(BffQueryStationListBorderReqDto reqDto);

    /**
   * B1-3修改职位（管理）
   */
    BffUpdatePostRespDto updatePost(BffUpdatePostReqDto reqDto);

    /**
   * B1-3新增职位（管理）
   */
    BffAddPostRespDto addPost(BffAddPostReqDto reqDto);

    /**
   * B1-3查询职位详情（管理）
   */
    BffQueryPostDetailRespDto queryPostDetail(BffQueryPostDetailReqDto reqDto);

    /**
   * B1-3查询职位列表（管理）
   */
    BffQueryPostListRespDto queryPostList(BffQueryPostListReqDto reqDto);

    /**
     * B1-3存档岗位（管理）
     */
    BffArchiveStationRespDto archiveStation(BffArchiveStationReqDto reqDto);

    /**
   * B1-3查询职位列表（边界）
   */
    BffQueryPostListBorderRespDto queryPostListBorder(BffQueryPostListBorderReqDto reqDto);

    /**
   * B1-3修改岗位（管理）
   */
    BffUpdateStationRespDto updateStation(BffUpdateStationReqDto reqDto);

    /**
   * B1-3查询岗位详情（管理）
   */
    BffQueryStationDetailRespDto queryStationDetail(BffQueryStationDetailReqDto reqDto);
    //
}
